package com.demo.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class News {
    private Integer id;
    private String  title;
    private String  content;
    private String  author;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")//设置时区及日期格式
    private Date    time;
/**
 * Java中有两个Date类，一个是java.util.Date，通常情况下用它获取当前时间，
 * 另一个是java.sql.Date，是针对SQL语句使用的，它只包含日期而没有时间部分。两个类型的时间可以相互转化。
 *
 * 当我们使用java.util.Date作为实体的日期类型时，实际上是能够表示MySQL的三种字段类型：
 *
 * （1）date
 * （2）datetime
 * （3）timestamp
 *
 * 在实际开发过程中，如果我们将java.util.Date当做参数传递给Mapper的时候，需要指定jdbctype。
 * 假如我们不指定jdbcType，那么这个日期会自动转化会MySQL的timestamp
 *
 *      #2018-06-15 00:00:00.0(Timestamp)
 *
 * 指定jdbcType=TIMESTAMP结果同上
 * 指定jdbcType=DATE，那么MyBatis会将传入参数截取为2018-06-15，变成Date类型
 *
 * 使用java.util.Date作为参数传递给Mapper时，
 * 不管MySQL的日期字段类型是date、datetime或者timestamp中的哪一种，默认缺省情况下，
 * MyBatis都能够自动做出类型转换
 *
 */
}
